const express = require("express");
const crypto = require("crypto");
const cors = require('cors');

// 创建 Express 应用
const app = express();

// 使用 cors 中间件
app.use(cors());

// 如果需要更加精确的控制，可以添加特定的 CORS 配置：
app.use(cors({
    origin: 'http://localhost:5173', // 允许前端的域名
    methods: ['GET', 'POST'],        // 允许的 HTTP 方法
    allowedHeaders: ['Content-Type'] // 允许的请求头
}));

app.use(express.json()); // 用于解析 JSON 数据

// 假用户数据
const fakeUser = {
    username: "123",
    password: crypto.createHash("md5").update("123").digest("hex") // 密码是 "123"
};

// 登录接口
app.post("/api/login", (req, res) => {
    const { username, password } = req.body;

    if (!username || !password) {
        return res.status(400).json({ message: "用户名和密码不能为空" });
    }

    // 使用 MD5 加密密码
    const encryptedPassword = crypto.createHash("md5").update(password).digest("hex");

    // 验证假用户
    if (username === fakeUser.username && encryptedPassword === fakeUser.password) {
        res.status(200).json({ message: "登录成功", user: fakeUser });
    } else {
        res.status(401).json({ message: "用户名或密码错误" });
    }
});

// 启动服务器
const PORT = 3000;
app.listen(PORT, () => {
    console.log(`服务器正在运行：http://localhost:${PORT}`);
});